'''
 UI自动化测试定制化开发
    用于网运托运人托运人信息模块测试
'''

import pytest
import logging
import allure
import utils.allure_step as allure_step
from utils.sele_Util import sele_Util
from time import sleep

logger = logging.getLogger()
sele_util = sele_Util('Chrome')


@pytest.fixture(scope='module', autouse=True)
def flow04_fixture(url_fixture):
    sele_util.open(url_fixture['PFUrl'])
    yield
    sleep(3)
    sele_util.quit()


@pytest.fixture(scope='module', autouse=True)
def execl_fixture():
    file_url = 'data/platform/网运货主托运人信息功能测试.xlsx'
    yield file_url


@allure.suite('网运平台托运人信息流程')
class TestFlow04:

    # 测试登录流程
    @allure.title('登录测试')
    @allure.story('进行登录测试')
    def test01_login(self, execl_fixture):
        logger.info('开始登录测试')
        sheet_name = '登录'
        allure_step.service(sele=sele_util, file_url=execl_fixture, sheet_name=sheet_name)

    @allure.title('货物管理测试')
    @allure.story('进行货物管理测试')
    def test02_manage_goods(self, execl_fixture):
        logger.info('开始货物管理测试')
        sheet_name = '货物管理'
        allure_step.service(sele=sele_util, file_url=execl_fixture, sheet_name=sheet_name)

    @allure.title('常用地址测试')
    @allure.story('进行常用地址测试')
    def test03_login(self, execl_fixture):
        logger.info('开始常用地址测试')
        sheet_name = '常用地址'
        allure_step.service(sele=sele_util, file_url=execl_fixture, sheet_name=sheet_name)
